/*
millis();    返回上电开始的系统运行时间长度，返回值类型：unsigned long 单位是ms，最长在50天左右溢出
unsigned long 占用4个字节，最大值为 4294967296-1
micros();    返回上电开始的系统运行时间长度，返回值类型：unsigned long 单位是us，最长在70分钟左右溢出

*/
#define TimeInterval1  2000   //定义时间间隔1  2s
#define TimeInterval2  4000   //定义时间间隔1  4s
unsigned long tick = 0;       //定义当前系统运行的时间值
void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);           //初始化串口
}

void loop() {
  tick = millis() ;           //获取当前系统运行的时间值
  if(tick % TimeInterval1 == 0)   //2s判断一次成功
  {
    Serial.println("1stask");     //执行2s的代码部分，这里是串口打印
    delay(1);                     //延时1ms，如果没有，会在1ms内多次进入，
  }                               //原因是因为系统运行的很快，执行串口打印，不需要1ms
  if(tick % TimeInterval2 == 0)   //下面同理
  {
    Serial.println("2stask");
    delay(1);
    
  }

}
